home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 2.iso / programr / cenviw1.zip / MESSAGE.LIB < prev    next >
Text File  |  1993-08-05  |  7KB  |  191 lines

  1. // Message.lib - Cmm code wrapper for the SendMessage() and PostMessage()
  2. //               Windows functions.  With these routines, any message can
  3. //               be sent or posted to any window.
  4. // Supported functions are:
  5. //    PostMessage()
  6. //    SendMessage()
  7. // SYNTAX:
  8. //  bool PostMessage(Window,Message,wParam,lParam)
  9. //  bool PostMessage(Window,Message,wParam,lParamLo,lParamHi)
  10. //   int SendMessage(Window,Message,wParam,lParam)
  11. //   int SendMessage(Window,Message,wParam,lParamLo,lParamHi)
  12. // WHERE:
  13. //    Window - Window handle to send message to or HWND_BROADCAST for all
  14. //    Message - the message to send
  15. //    wParam - the word-size parameter to send
  16. //    lParam - the double-word (32-bit) size paramter to send
  17. //    lParamLo - Low-order word of lParam
  18. //    lParamHi - Hi-order word of lParam
  19. // RETURN:
  20. //    SendMessage() returns the value returned by the window message handler
  21. //    PostMessage(0 returns boolean for whether the message was posted
  22.  
  23. #define  HWND_BROADCAST    0xFFFF   // send or post to all windows
  24.  
  25. // Here are a bunch of messages that Windows might receive
  26.  
  27. #define WM_NULL             0x0000
  28. #define WM_CREATE           0x0001
  29. #define WM_DESTROY          0x0002
  30. #define WM_MOVE             0x0003
  31. #define WM_SIZE             0x0005
  32. #define WM_ACTIVATE         0x0006
  33. #define WM_SETFOCUS         0x0007
  34. #define WM_KILLFOCUS        0x0008
  35. #define WM_ENABLE           0x000A
  36. #define WM_SETREDRAW        0x000B
  37. #define WM_SETTEXT          0x000C
  38. #define WM_GETTEXT          0x000D
  39. #define WM_GETTEXTLENGTH    0x000E
  40. #define WM_PAINT            0x000F
  41. #define WM_CLOSE            0x0010
  42. #define WM_QUERYENDSESSION  0x0011
  43. #define WM_QUIT             0x0012
  44. #define WM_QUERYOPEN        0x0013
  45. #define WM_ERASEBKGND       0x0014
  46. #define WM_SYSCOLORCHANGE   0x0015
  47. #define WM_ENDSESSION       0x0016
  48. #define WM_SHOWWINDOW       0x0018
  49. #define WM_CTLCOLOR         0x0019
  50. #define WM_WININICHANGE     0x001A
  51. #define WM_DEVMODECHANGE    0x001B
  52. #define WM_ACTIVATEAPP      0x001C
  53. #define WM_FONTCHANGE       0x001D
  54. #define WM_TIMECHANGE       0x001E
  55. #define WM_CANCELMODE       0x001F
  56. #define WM_SETCURSOR        0x0020
  57. #define WM_MOUSEACTIVATE    0x0021
  58. #define WM_CHILDACTIVATE    0x0022
  59. #define WM_QUEUESYNC        0x0023
  60. #define WM_GETMINMAXINFO    0x0024
  61. #define WM_PAINTICON        0x0026
  62. #define WM_ICONERASEBKGND   0x0027
  63. #define WM_NEXTDLGCTL       0x0028
  64. #define WM_SPOOLERSTATUS    0x002A
  65. #define WM_DRAWITEM         0x002B
  66. #define WM_MEASUREITEM      0x002C
  67. #define WM_DELETEITEM       0x002D
  68. #define WM_VKEYTOITEM       0x002E
  69. #define WM_CHARTOITEM       0x002F
  70. #define WM_SETFONT          0x0030
  71. #define WM_GETFONT          0x0031
  72. #define WM_QUERYDRAGICON    0x0037
  73. #define WM_COMPAREITEM      0x0039
  74. #define WM_COMPACTING       0x0041
  75. #define WM_NCCREATE         0x0081
  76. #define WM_NCDESTROY        0x0082
  77. #define WM_NCCALCSIZE       0x0083
  78. #define WM_NCHITTEST        0x0084
  79. #define WM_NCPAINT          0x0085
  80. #define WM_NCACTIVATE       0x0086
  81. #define WM_GETDLGCODE       0x0087
  82. #define WM_NCMOUSEMOVE      0x00A0
  83. #define WM_NCLBUTTONDOWN    0x00A1
  84. #define WM_NCLBUTTONUP      0x00A2
  85. #define WM_NCLBUTTONDBLCLK  0x00A3
  86. #define WM_NCRBUTTONDOWN    0x00A4
  87. #define WM_NCRBUTTONUP      0x00A5
  88. #define WM_NCRBUTTONDBLCLK  0x00A6
  89. #define WM_NCMBUTTONDOWN    0x00A7
  90. #define WM_NCMBUTTONUP      0x00A8
  91. #define WM_NCMBUTTONDBLCLK  0x00A9
  92. #define WM_KEYFIRST         0x0100
  93. #define WM_KEYDOWN          0x0100
  94. #define WM_KEYUP            0x0101
  95. #define WM_CHAR             0x0102
  96. #define WM_DEADCHAR         0x0103
  97. #define WM_SYSKEYDOWN       0x0104
  98. #define WM_SYSKEYUP         0x0105
  99. #define WM_SYSCHAR          0x0106
  100. #define WM_SYSDEADCHAR      0x0107
  101. #define WM_KEYLAST          0x0108
  102. #define WM_INITDIALOG       0x0110
  103. #define WM_COMMAND          0x0111
  104. #define WM_SYSCOMMAND       0x0112
  105.    #define SC_SIZE         0xF000
  106.    #define SC_MOVE         0xF010
  107.    #define SC_MINIMIZE     0xF020
  108.    #define SC_MAXIMIZE     0xF030
  109.    #define SC_NEXTWINDOW   0xF040
  110.    #define SC_PREVWINDOW   0xF050
  111.    #define SC_CLOSE        0xF060
  112.    #define SC_VSCROLL      0xF070
  113.    #define SC_HSCROLL      0xF080
  114.    #define SC_MOUSEMENU    0xF090
  115.    #define SC_KEYMENU      0xF100
  116.    #define SC_ARRANGE      0xF110
  117.    #define SC_RESTORE      0xF120
  118.    #define SC_TASKLIST     0xF130
  119.    #define SC_ICON         SC_MINIMIZE
  120.    #define SC_ZOOM         SC_MAXIMIZE
  121. #define WM_TIMER            0x0113
  122. #define WM_HSCROLL          0x0114
  123. #define WM_VSCROLL          0x0115
  124. #define WM_INITMENU         0x0116
  125. #define WM_INITMENUPOPUP    0x0117
  126. #define WM_MENUSELECT       0x011F
  127. #define WM_MENUCHAR         0x0120
  128. #define WM_ENTERIDLE        0x0121
  129. #define WM_MOUSEFIRST       0x0200
  130. #define WM_MOUSEMOVE        0x0200
  131. #define WM_LBUTTONDOWN      0x0201
  132. #define WM_LBUTTONUP        0x0202
  133. #define WM_LBUTTONDBLCLK    0x0203
  134. #define WM_RBUTTONDOWN      0x0204
  135. #define WM_RBUTTONUP        0x0205
  136. #define WM_RBUTTONDBLCLK    0x0206
  137. #define WM_MBUTTONDOWN      0x0207
  138. #define WM_MBUTTONUP        0x0208
  139. #define WM_MBUTTONDBLCLK    0x0209
  140. #define WM_MOUSELAST        0x0209
  141. #define WM_PARENTNOTIFY     0x0210
  142. #define WM_MDICREATE        0x0220
  143. #define WM_MDIDESTROY       0x0221
  144. #define WM_MDIACTIVATE      0x0222
  145. #define WM_MDIRESTORE       0x0223
  146. #define WM_MDINEXT          0x0224
  147. #define WM_MDIMAXIMIZE      0x0225
  148. #define WM_MDITILE          0x0226
  149. #define WM_MDICASCADE       0x0227
  150. #define WM_MDIICONARRANGE   0x0228
  151. #define WM_MDIGETACTIVE     0x0229
  152. #define WM_MDISETMENU       0x0230
  153. #define WM_CUT              0x0300
  154. #define WM_COPY             0x0301
  155. #define WM_PASTE            0x0302
  156. #define WM_CLEAR            0x0303
  157. #define WM_UNDO             0x0304
  158. #define WM_RENDERFORMAT     0x0305
  159. #define WM_RENDERALLFORMATS 0x0306
  160. #define WM_DESTROYCLIPBOARD 0x0307
  161. #define WM_DRAWCLIPBOARD    0x0308
  162. #define WM_PAINTCLIPBOARD   0x0309
  163. #define WM_VSCROLLCLIPBOARD 0x030A
  164. #define WM_SIZECLIPBOARD    0x030B
  165. #define WM_ASKCBFORMATNAME  0x030C
  166. #define WM_CHANGECBCHAIN    0x030D
  167. #define WM_HSCROLLCLIPBOARD 0x030E
  168. #define WM_QUERYNEWPALETTE  0x030F
  169. #define WM_PALETTEISCHANGING 0x0310
  170. #define WM_PALETTECHANGED   0x0311
  171.  
  172.  
  173.  
  174. SendMessage(Window,Message,wParam,lParamLo,lParamHi)
  175. {
  176.    if ( va_arg() == 4 )
  177.       return(SendMessage(Window,Message,wParam,lParamLo & 0xFFFF,(lParamLo >> 16) & 0xFFFF));
  178.    return( DynamicLink("USER","SENDMESSAGE",SWORD16,PASCAL,
  179.                        Window,Message,wParam,lParamLo,lParamHi) );
  180. }
  181.  
  182. PostMessage(Window,Message,wParam,lParamLo,lParamHi)
  183. {
  184.    if ( va_arg() == 4 )
  185.       return(PostMessage(Window,Message,wParam,lParamLo & 0xFFFF,(lParamLo >> 16) & 0xFFFF));
  186.    return( DynamicLink("USER","POSTMESSAGE",SWORD16,PASCAL,
  187.                        Window,Message,wParam,lParamLo,lParamHi) );
  188. }
  189.  
  190.  
  191.